package com.example.hxds.bff.customer.service;

import com.example.hxds.bff.customer.controller.form.*;
import com.example.hxds.common.util.PageUtils;
import com.example.hxds.common.util.R;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

public interface VoucherService {
    /**
     * 查询未使用代金券分页记录
     * @param form
     * @return
     */
    PageUtils searchUnTakeVoucherByPage(SearchUnTakeVoucherByPageForm form);


    /**
     * 领取代金券
     * @param form
     * @return
     */
    boolean takeVoucher(TakeVoucherForm form);


    /**
     * 查询未使用代金券分页记录
     * @param form
     * @return
     */
    PageUtils searchUnUseVoucherByPage(SearchUnUseVoucherByPageForm form);


    /**
     * 查询已使用代金券分页记录
     * @param form
     * @return
     */
    PageUtils searchUsedVoucherByPage(SearchUsedVoucherByPageForm form);


    /**
     * 查询未使用代金券数量
     * @param form
     * @return
     */
    long searchUnUseVoucherCount(SearchUnUseVoucherCountForm form);
}
